package a2022.a20220616;

import java.util.Arrays;

/**
 * @author lenovo
 * @date 2022/6/16
 */
public class a {
    public static void main(String[] args) {

        findPairs(new int[]{3,1,4,1,5},2);
    }
    public static int findPairs(int[] nums, int k) {
        Arrays.sort(nums);
        int n = nums.length, y = 0, res = 0;
        for (int x = 0; x < n; x++) {
            if (x == 0 || nums[x] != nums[x - 1]) {
                while (y < n && (nums[y] < nums[x] + k || y <= x)) {
                    y++;
                }
                if (y < n && nums[y] == nums[x] + k) {
                    res++;
                }
            }
        }
        return res;
    }
//    public static int findPairs(int[] nums, int k) {
//        Set<Integer> visited = new HashSet<Integer>();
//        Set<Integer> res = new HashSet<Integer>();
//        for (int num : nums) {
//            if (visited.contains(num - k)) {
//                res.add(num - k);
//            }
//            if (visited.contains(num + k)) {
//                res.add(num);
//            }
//            visited.add(num);
//        }
//        return res.size();
//    }



}
